package common.dao;

import org.hibernate.Session;

import java.io.Serializable;

/**
 * 数据库基础类
 */
public interface BaseDao<PK, E extends Serializable> {
    /**
     * 保存对象
     * @param e
     */

    public E save(E e);

    /**
     * 修改实体
     * @param e
     */

    public E update(E e);


    public E load(Class clazz, PK pk);


    public E get(Class clazz, PK pk);

    public int countRecord(String sql);

    public Session getSession();

    public void delete(Object obj);

    public void deleteById(Class<E> eClass,Serializable id);
}
